package com.ptswitch.material.service;

import java.util.List;

import org.apache.poi.ss.usermodel.Workbook;

import com.ptswitch.material.model.material.Bom;
import com.ptswitch.material.model.material.Material;

public interface MaterialExcelService {

    static final int OutputBomError_NONE = 0;
    static final int OutputBomError_State = 1 << 0;
    static final int OutputBomError_IndustryLevel = 1 << 1;

    void buildMaterialsFromExcel(List<Material> materials, Workbook wb);

    void buildMaterialsFromExcel(List<Material> materials, String filePath);

    void buildBomFromExcel(Bom bom, Workbook wb);

    void buildBomFromExcel(Bom bom, String filePath);

    void buildDataFromZip(List<Material> materials, List<Bom> boms, String parentPath, String zipFilePath);

    void outputDataToZip(List<Material> materials, List<Bom> boms, String parentPath, String outputDirectory);

    Workbook outputMaterials(List<Material> materials);

    void outputMaterials(String absouluteFilePath, List<Material> materials);

    Workbook outputBom(Bom bom, int outputBomError);

    void outputBom(String absoluteFilePath, Bom bom, int outputBomError);

//	Workbook outputBomList(List<Bom> boms, String parentPath);

}
